package broker

import (
	"gitee.com/tjccc/gomq/interface/conn"
	"gitee.com/tjccc/gomq/interface/protocol"
)

type Broker interface {
	Exec(client conn.Connection, msg protocol.Msg)
	Close()
	Lock()
	Unlock()
	DeclareTopic(topicName string) error
	ReceiveMsg(topicName string, data []byte) error
	Subscribe(client conn.Connection, topic string)

	//GetConsumerGroup(groupName string, create bool) *ConsumerGroup
}
